package v1

type Node struct {
	Name   string     `json:"name"`
	IP     string     `json:"ip"`
	InK8s  string     `json:"inK8s"`
	Status NodeStatus `json:"status"`
}

type NodeStatus struct {
	Ready              string       `json:"ready"`
	NetworkUnavailable string       `json:"networkUnavailable"`
	MemoryPressure     string       `json:"memoryPressure"`
	DiskPressure       string       `json:"diskPressure"`
	PIDPressure        string       `json:"pidPressure"`
	CPU                CPUStatus    `json:"cpu"`
	Memory             MemoryStatus `json:"memory"`
	Time               int64        `json:"time"`
}

type CPUStatus struct {
	Cores   float64 `json:"cores"`
	Percent float64 `json:"percent"`
}

type MemoryStatus struct {
	Bytes   float64 `json:"bytes"`
	Percent float64 `json:"percent"`
}

type NodeList struct {
	Nodes []Node `json:"nodes"`
}
